.grid-layout-col{
  color: rgba(20,35,110,1)
}
.form-element-layout{
  background-color: rgba(230,230,255,1);
}
p{
  line-height: 1.6;
}
button, input, select, textarea{
  border: none;
}
select{
  background: #fff;
}
input[type="text"]{
  height: 42px;
  padding-left: 10px;
}
input[type="text"]::placeholder{
  color: #bfbfbf;
  font-size: 14px;
}
input[type="text"]:-ms-input-placeholder{
  color: #bfbfbf;
  font-size: 14px;
}
input[type="text"]::-ms-input-placeholder{
  color: #bfbfbf;
  font-size: 14px;
}
.single-checkbox-row input[type="checkbox"]{
  display: none!important;
}
.single-checkbox-row label{
  position: relative;
}
.single-checkbox-row label::before{
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  box-sizing: content-box;
  border: 1px solid rgba(20,35,110,1);
  background-color: #fff;
  margin-right: 3px;
}
.single-checkbox-row input[type="checkbox"]:checked + label::after{
  content: '';
  display: block;
  position: absolute;
  top: 6px;
  left: 3px;
  transform: rotate(45deg);
  width: 5px;
  height: 9px;
  border-bottom: 2px solid rgba(20,35,110,1);
  border-right: 2px solid rgba(20,35,110,1);
}
.field-control-wrapper input[type="radio"]{
  display: none!important;
}
.field-control-wrapper input[type="radio"] + label{
  position: relative;
}
.field-control-wrapper input[type="radio"] + label::before{
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 7px;
  box-sizing: content-box;
  border: 1px solid rgba(20,35,110,1);
  background-color: #fff;
  margin-right: 3px;
}
.field-control-wrapper input[type="radio"]:checked + label::after{
  content: '';
  display: block;
  position: absolute;
  top: 8px;
  left: 3px;
  width: 6px;
  height: 6px;
  background-color: rgba(20,35,110,1);
  border-radius: 3px;
  
}
.LV_valid{
  display: none;
}
.row{
  margin: 0;
}
.container-fluid{
  padding: 0;
  margin-bottom: 20px;
}
.form-element-layout .col-xs-4{
  width: auto;
}
.form_img img {
  max-width: 80%;
}
.layout-col{
  margin-bottom: 7px;
}
.form-element-layout{
  display: flex;
  flex-wrap: nowrap;
  position: relative;
}
.form-element-layout > div:first-child{
  padding: 15px 20px;
  width: 25%;
  display: flex;
  align-items: center;
}
.form-element-layout > div:last-child{
  padding: 15px 10px;
  width: 75%;
  display: flex;
  align-items: center;
}
.form-submit-layout > div div{
  text-align: center;
}
.form-submit-layout .submit-button-style {
  height: 30px;
  width: 120px;
}
.form-element-layout .row{
  width: 100%;
}
.single-checkbox-row,
.field-control-wrapper{
  line-height: 1.8em;
}
.LV_invalid_field{
  border: 1px solid #CC0000;
}
.LV_invalid{
  color: #CC0000;
  font-size: 10px;
  font-weight: bold;
}
.form-element-layout .list-col2,
.form-element-layout .list-col3{
  display: flex;
  flex-wrap: wrap;
}
.form-element-layout .list-col2 > div{
  width: 50%;
}
.form-element-layout .list-col3 > div{
  width: 33%;
}
.input-col2{
  display: flex;
}
.input-col2 div{
  width: 45%;
}
.input-col2 div input{
  width: 100%;  
}
.input-col2 div + div{
  margin-left: 10px;
}
.input-col2 > div > div{
  width: 100%;
}
.elq-required{
  display: inline-block;
}

/*お問い合わせいただく前の注意*/
.col-xs-12{
  float: none;
}
.attentionBox{
  border: 2px #ccc solid;
  padding: 25px 20px;
  margin-top: 50px;
  margin-bottom: 40px;
}
.attentionBox #attention.contact_attention_title{
  font-size: 20px;
  margin-bottom: 25px;
}
ul.list.circle > li{
  padding-left: 25px;
  position: relative;
  list-style: none;
  line-height: 1.6;
}
ul.list.circle > li:before{
  background-color: #969696;
  border-radius: 100%;
  content: "";
  height: 8px;
  left: 5px;
  position: absolute;
  top: 0.5em;
  width: 8px;
}
ul.list.circle > li + li{
  margin-top: 10px;
}
.layout-col .form-element-layout + .form-element-layout::before{
  content: '';
  display: inline-block;
  width: calc(100% - 30px);
  position: absolute;
  top: -1px;
  right: 0;
  left: 0;
  margin: auto;
  border-top: 1px solid #fff;
}
.hidden_form{
  display: none!important;
}

@media screen and (max-width: 767px){
  .form-element-layout{
    flex-flow: column;
  }
  .form-element-layout > div:first-child{
    width: 100%;
    padding-bottom: 0;
  }
  .form-element-layout > div:last-child{
    width: 100%;
    padding-top: 0;
  }
  .single-checkbox-row{
    text-indent: -1em;
    padding-left: 1em;
    padding-right: 1em;
  }
  .form-element-layout .col-xs-4{
    width: auto;
  }
  input[type="text"]{
    padding-left: 3px;;
  }
  input[type="text"]::placeholder{
    font-size: 12px;
  }
  input[type="text"]:-ms-input-placeholder{
    font-size: 12px;
  }
  input[type="text"]::-ms-input-placeholder{
    font-size: 12px;
  }
}